--- ./gtk/gtkmenutrackeritem.c.orig	2014-05-12 10:46:53.000000000 +0000
+++ ./gtk/gtkmenutrackeritem.c	2014-07-20 15:16:09.000000000 +0000
@@ -114,6 +114,7 @@
   PROP_ROLE,
   PROP_TOGGLED,
   PROP_ACCEL,
+  PROP_ACCEL_TEXT,
   PROP_SUBMENU_SHOWN,
   N_PROPS
 };
@@ -185,6 +186,9 @@
     case PROP_ACCEL:
       g_value_set_string (value, gtk_menu_tracker_item_get_accel (self));
       break;
+    case PROP_ACCEL_TEXT:
+      g_value_set_string (value, gtk_menu_tracker_item_get_accel_text (self));
+      break;
     case PROP_SUBMENU_SHOWN:
       g_value_set_boolean (value, gtk_menu_tracker_item_get_submenu_shown (self));
       break;
@@ -240,6 +244,8 @@
     g_param_spec_boolean ("toggled", "", "", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE);
   gtk_menu_tracker_item_pspecs[PROP_ACCEL] =
     g_param_spec_string ("accel", "", "", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE);
+  gtk_menu_tracker_item_pspecs[PROP_ACCEL_TEXT] =
+    g_param_spec_boolean ("accel-text", "", "", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE);
   gtk_menu_tracker_item_pspecs[PROP_SUBMENU_SHOWN] =
     g_param_spec_boolean ("submenu-shown", "", "", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE);
 
@@ -663,6 +669,16 @@
   return special;
 }
 
+const gchar *
+gtk_menu_tracker_item_get_accel_text (GtkMenuTrackerItem *self)
+{
+  const gchar *accel_text = NULL;
+
+  g_menu_item_get_attribute (self->item, "x-canonical-accel", "&s", &accel_text);
+
+  return accel_text;
+}
+
 GMenuModel *
 _gtk_menu_tracker_item_get_submenu (GtkMenuTrackerItem *self)
 {
@@ -901,3 +917,19 @@
 {
   return self->hidden_when != HIDDEN_NEVER;
 }
+
+GMenuItem *
+gtk_menu_tracker_item_get_menu_item (GtkMenuTrackerItem *self)
+{
+  g_return_if_fail (GTK_IS_MENU_TRACKER_ITEM (self));
+
+  return self->item;
+}
+
+const gchar *
+gtk_menu_tracker_item_get_action_namespace (GtkMenuTrackerItem *self)
+{
+  g_return_if_fail (GTK_IS_MENU_TRACKER_ITEM (self));
+
+  return self->action_namespace;
+}
